package rely

import (
	"github.com/google/wire"

	"gitee.com/mkwchecking/k-scaffold/pkg/rely/casbin"
	"gitee.com/mkwchecking/k-scaffold/pkg/rely/client"
	"gitee.com/mkwchecking/k-scaffold/pkg/rely/db"
	"gitee.com/mkwchecking/k-scaffold/pkg/rely/discovery"
	"gitee.com/mkwchecking/k-scaffold/pkg/rely/gin"
	"gitee.com/mkwchecking/k-scaffold/pkg/rely/gorm"
	"gitee.com/mkwchecking/k-scaffold/pkg/rely/redis"
	"gitee.com/mkwchecking/k-scaffold/pkg/rely/trace"
	"gitee.com/mkwchecking/k-scaffold/pkg/rely/uid"
)

var ProviderSet = wire.NewSet(
	casbin.Provide,
	client.ProvideGRPC,
	db.Provide,
	discovery.Provide,
	gorm.ProvideDefault,
	redis.ProvideDefault,
	uid.Provide,
	gin.Provider,
)

var ProviderGetter = wire.NewSet(
	casbin.Get,
	db.GetDB,
	gorm.GetGorm,
	redis.GetRedis,
	trace.Get,
)
